package cn.xopencode.securityservice.rpc.violate.dto;

import cn.xopencode.common.framework.validator.InEnum;
import cn.xopencode.securityservice.enums.violate.ViolateAuditStatusEnum;
import cn.xopencode.securityservice.enums.violate.ViolateLevelEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * 审核反三违及事故情况 Request DTO
 */
@Data
@Accessors(chain = true)
public class ViolateAuditReqDTO implements Serializable {
    @NotNull(message = "请选择审核数据")
    @ApiModelProperty(value = "ID")
    private String id;

    /**
     * 不通过理由
     */
    @Length(min = 0, max = 200, message = "不通过理由长度为 0-200 位")
    @ApiModelProperty(value = "不通过理由")
    private String failReason;

    /**
     * 审核状态
     */
    @NotNull(message = "审核状态不能为空")
    @InEnum(value = ViolateAuditStatusEnum.class, message = "审核状态必须是 {value}")
    @ApiModelProperty(value = "审核状态，0:不通过,1:通过,2:待审核")
    private Integer auditStatus;
}
